Skip to content

feat(ci): set up frontend CI pipeline with lint, type-check, and build (#69) - #178

Closed
Femology wants to merge 1 commit into
arflexx:mainfrom
Femology:feat/issue-69-frontend-ci
Closed

feat(ci): set up frontend CI pipeline with lint, type-check, and build (#69)#178
Femology wants to merge 1 commit into
arflexx:mainfrom
Femology:feat/issue-69-frontend-ci

Conversation

@Femology

Copy link
Copy Markdown

Summary

Sets up an automated GitHub Actions CI pipeline for the frontend (frontend/) to enforce quality gates (linting, TypeScript checking, unit testing with coverage, and production build) on pull requests targeting main and direct pushes to main.

Closes #69


Type of Change

  • feat — new feature
  • chore — build, deps, config
  • fix — bug fix (fixed existing TS/ESLint errors preventing clean CI runs)

What Changed

File Change
.github/workflows/frontend-ci.yml Workflow triggering on push/PR to main, caching node modules via actions/cache keyed on frontend/pnpm-lock.yaml, running pnpm install --frozen-lockfile, pnpm lint, pnpm tsc --noEmit, pnpm test:coverage, and pnpm build, uploading coverage artifact and build artifact under Frontend CI status check
.github/workflows/docs-ci.yml Preserved the Docs Site CI/CD workflow formerly housed in frontend-ci.yml
frontend/.eslintrc.json Added Next.js ESLint configuration extending next/core-web-vitals
frontend/package.json Added eslint & eslint-config-next devDependencies and test:coverage script
frontend/app/profile/page.tsx Fixed TradeStatus record missing Disputed mapping
frontend/app/trades/[id]/TradeDetailClient.tsx Fixed TradeOffer["status"] missing Disputed and unescaped quotes
frontend/app/auth/signup/page.tsx Escaped unescaped apostrophe in JSX
frontend/app/wallet/WithdrawModal.tsx Wrapped callback handlers in useCallback to satisfy hook dependencies
frontend/app/page.tsx Handled API fetch failure gracefully during static prerendering
apps/docs-site/next.config.mjs & pages/deployment.mdx Updated references pointing to docs-ci.yml

How to Test

cd frontend
pnpm install --frozen-lockfile
pnpm lint
pnpm tsc --noEmit
pnpm test:coverage
pnpm build

Checklist

General

  • Code compiles / builds without errors
  • No new TypeScript errors (tsc --noEmit)
  • Follows existing code style and patterns
  • No secrets, keys, or credentials committed
  • Tested locally and confirmed all CI steps exit with code 0

@Femology
Femology requested a review from dark-sarge as a code owner August 27, 2026 13:58
@drips-wave

drips-wave Bot commented Aug 27, 2026

Copy link
Copy Markdown

@Femology Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@Femology Femology closed this by deleting the head repository Aug 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[frontend] - Set Up Frontend CI Pipeline with Lint, Type-Check, and Build

2 participants